package com.thinkverse.audit.dto;

import com.thinkverse.common.dto.BaseDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Map;

/**
 * 审计统计DTO
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class AuditStatisticsDTO extends BaseDTO {
    
    /**
     * 总操作次数
     */
    private Long totalOperations;
    
    /**
     * 成功操作次数
     */
    private Long successOperations;
    
    /**
     * 失败操作次数
     */
    private Long failedOperations;
    
    /**
     * 按操作类型统计
     */
    private Map<String, Long> operationTypeStats;
    
    /**
     * 按用户统计
     */
    private Map<String, Long> userStats;
    
    /**
     * 按服务统计
     */
    private Map<String, Long> serviceStats;
    
    /**
     * 按时间段统计
     */
    private Map<String, Long> timeStats;
    
    /**
     * 平均响应时间
     */
    private Double avgResponseTime;
    
    /**
     * 统计时间范围
     */
    private String timeRange;
}
